<html>
<head><meta charset="utf-8"><title>Completion latency? · t-compiler/rust-analyzer · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/index.html">t-compiler/rust-analyzer</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html">Completion latency?</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="184904102"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184904102" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ivan Molodetskikh <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184904102">(Jan 06 2020 at 13:06)</a>:</h4>
<p>Hello! I'm trying rust-analyzer again now that cargo-watch is built-in (finally! can't live without this one). It looks like the completion takes about 1.5 seconds to pop up after I input <code>something.</code>, which is just long enough to be annoying. RLS is almost instant—after it's done building its database, that is. Is it supposed to take this long? I'm on neovim with LanguageClient-neovim.</p>



<a name="184904262"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184904262" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184904262">(Jan 06 2020 at 13:09)</a>:</h4>
<p>1.5 seconds seems excessive! Our completion is not as speedy as I would like yet, but it should fit into hundreds of milliseconds. Does it happen every time or only for specific projects?</p>



<a name="184904366"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184904366" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184904366">(Jan 06 2020 at 13:10)</a>:</h4>
<p><a href="/user_uploads/4715/_R_rdcQp47A5LxP3kcYUyTmT/Peek-2020-01-06-14-09.gif" target="_blank" title="Peek-2020-01-06-14-09.gif">Peek-2020-01-06-14-09.gif</a> </p>
<div class="message_inline_image"><a href="/user_uploads/4715/_R_rdcQp47A5LxP3kcYUyTmT/Peek-2020-01-06-14-09.gif" target="_blank" title="Peek-2020-01-06-14-09.gif"><img src="/user_uploads/4715/_R_rdcQp47A5LxP3kcYUyTmT/Peek-2020-01-06-14-09.gif"></a></div><p>This is how completion works in rust-analyzer itself</p>



<a name="184904634"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184904634" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ivan Molodetskikh <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184904634">(Jan 06 2020 at 13:15)</a>:</h4>
<p>Hmm, looks like it's generally fast, but on this small 1-file project using vulkano it takes around 1 second.</p>



<a name="184904742"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184904742" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184904742">(Jan 06 2020 at 13:16)</a>:</h4>
<p><span class="user-mention" data-user-id="212263">@Ivan Molodetskikh</span> that's wonderful! Could you publish this 1-line project with Cargo.lock to github?</p>



<a name="184904978"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184904978" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ivan Molodetskikh <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184904978">(Jan 06 2020 at 13:20)</a>:</h4>
<p><a href="https://github.com/YaLTeR/rust-analyzer-long-completion" target="_blank" title="https://github.com/YaLTeR/rust-analyzer-long-completion">https://github.com/YaLTeR/rust-analyzer-long-completion</a></p>



<a name="184905016"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184905016" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ivan Molodetskikh <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184905016">(Jan 06 2020 at 13:21)</a>:</h4>
<p>Both completing something from existing variables (e.g. pipeline) and just doing a <code>let temp = "asd"; temp.</code> has about 1 second of latency for me.</p>



<a name="184905407"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184905407" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184905407">(Jan 06 2020 at 13:26)</a>:</h4>
<p>yup, reproduced!</p>



<a name="184905738"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184905738" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184905738">(Jan 06 2020 at 13:30)</a>:</h4>
<p>it might be related to the "profiling rust-analyzer" topic (especially considering vulkano produces lots of items with macros, I think)</p>



<a name="184906243"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906243" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906243">(Jan 06 2020 at 13:38)</a>:</h4>
<p><span class="user-mention" data-user-id="129457">@Florian Diebold</span> I think that's a different problem, here's profile: <a href="https://gist.github.com/matklad/7e4e0ffcd6c2e8965dcf5a2da61fb149" target="_blank" title="https://gist.github.com/matklad/7e4e0ffcd6c2e8965dcf5a2da61fb149">https://gist.github.com/matklad/7e4e0ffcd6c2e8965dcf5a2da61fb149</a> (I <strong>love</strong> our profiling infra).</p>
<p>The crate_def_map takes 0ms, which is expected: it is a const external crate. </p>
<p>OTOH, the <code>infer</code> query takes quite a while. Which... is expected, give Tomaka's <a href="https://github.com/libp2p/rust-libp2p/blob/2c4b52a545ca051147b03154525aa0e99d36fa2b/swarm/src/lib.rs#L175-L207" target="_blank" title="https://github.com/libp2p/rust-libp2p/blob/2c4b52a545ca051147b03154525aa0e99d36fa2b/swarm/src/lib.rs#L175-L207">code style</a> :D, and which makes this an interesting test case</p>



<a name="184906379"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906379" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906379">(Jan 06 2020 at 13:41)</a>:</h4>
<p>wow</p>



<a name="184906417"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906417" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906417">(Jan 06 2020 at 13:41)</a>:</h4>
<p>I don't quite understand why infer would take so long though</p>



<a name="184906431"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906431" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906431">(Jan 06 2020 at 13:42)</a>:</h4>
<p>it might lead to lots of trait queries, but I don't see any in the profile</p>



<a name="184906493"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906493" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906493">(Jan 06 2020 at 13:42)</a>:</h4>
<div class="codehilite"><pre><span></span>                          380ms - trait_solve_query
                          219ms - trait_solve_query (213 calls)
</pre></div>



<a name="184906495"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906495" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ivan Molodetskikh <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906495">(Jan 06 2020 at 13:42)</a>:</h4>
<p>Hahaha wow, that's a lot of traits! Maybe it's this thing killing it? <a href="https://docs.rs/vulkano/0.16.0/vulkano/pipeline/struct.GraphicsPipelineBuilder.html" target="_blank" title="https://docs.rs/vulkano/0.16.0/vulkano/pipeline/struct.GraphicsPipelineBuilder.html">https://docs.rs/vulkano/0.16.0/vulkano/pipeline/struct.GraphicsPipelineBuilder.html</a></p>



<a name="184906517"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906517" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906517">(Jan 06 2020 at 13:42)</a>:</h4>
<p>ah wait, that's just <code>infer</code> and no <code>do_infer</code> in the end, so it's apparently again salsa revalidation taking so long?</p>



<a name="184906520"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906520" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906520">(Jan 06 2020 at 13:42)</a>:</h4>
<p>They are kicked by diagnostics query (the <code>infer</code> in completion basically waits for those complete)</p>



<a name="184906537"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906537" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906537">(Jan 06 2020 at 13:42)</a>:</h4>
<p>and probably again because of all the trait queries <span aria-label="confused" class="emoji emoji-1f615" role="img" title="confused">:confused:</span></p>



<a name="184906576"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906576" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906576">(Jan 06 2020 at 13:43)</a>:</h4>
<p>I don't think this is re-validation. Rather, one thread blocks while the other computes the result</p>



<a name="184906634"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906634" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906634">(Jan 06 2020 at 13:44)</a>:</h4>
<p>ah, that could be it</p>



<a name="184906699"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906699" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906699">(Jan 06 2020 at 13:45)</a>:</h4>
<p>This can't be revalidation, b/c infer is a volatile query, and is just thrown away without revalidation. </p>
<p>However, I wonder if adding that caching to <code>that_sovler</code> query we talked about the other day might help here as well</p>



<a name="184906926"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906926" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906926">(Jan 06 2020 at 13:48)</a>:</h4>
<blockquote>
<p>This can't be revalidation, b/c infer is a volatile query, and is just thrown away without revalidation. </p>
</blockquote>
<p>It is? I don't see that here <a href="https://github.com/rust-analyzer/rust-analyzer/blob/1953ac17fd8c93d2145ec3103fd39dd9d6c8fd30/crates/ra_hir_ty/src/db.rs#L26" target="_blank" title="https://github.com/rust-analyzer/rust-analyzer/blob/1953ac17fd8c93d2145ec3103fd39dd9d6c8fd30/crates/ra_hir_ty/src/db.rs#L26">https://github.com/rust-analyzer/rust-analyzer/blob/1953ac17fd8c93d2145ec3103fd39dd9d6c8fd30/crates/ra_hir_ty/src/db.rs#L26</a> (and I don't think that'd be a good idea, when we're calling it for every function in a file for diagnostics?)</p>



<a name="184906999"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184906999" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184906999">(Jan 06 2020 at 13:49)</a>:</h4>
<p>the <code>trait_solver_query</code> is volatile, so, once we try validate first of <code>trait_solve_query</code>, we immediately thrown the result awway</p>



<a name="184907119"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184907119" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184907119">(Jan 06 2020 at 13:51)</a>:</h4>
<p>Yeah, caching trait_solver gives a more reasonable <code>  216ms - handle_completion</code></p>



<a name="184907139"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184907139" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184907139">(Jan 06 2020 at 13:51)</a>:</h4>
<p>(of which 150ms seem to be revalidation)</p>



<a name="184907255"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184907255" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184907255">(Jan 06 2020 at 13:53)</a>:</h4>
<p>(also, to give some scale, I think we should aim at 16ms for completion latency. Shouldn't be that hard: it's just text processing of low-megabytes of text after all :) )</p>



<a name="184907719"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184907719" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184907719">(Jan 06 2020 at 13:59)</a>:</h4>
<p><span class="user-mention" data-user-id="129457">@Florian Diebold</span> submitted a PR with caching: <a href="https://github.com/rust-analyzer/rust-analyzer/pull/2752" target="_blank" title="https://github.com/rust-analyzer/rust-analyzer/pull/2752">https://github.com/rust-analyzer/rust-analyzer/pull/2752</a>.</p>



<a name="184917120"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/184917120" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#184917120">(Jan 06 2020 at 15:42)</a>:</h4>
<p>this reminds me that figuring out how to integrate trait solver caching with salsa is on my list of "open problems"</p>



<a name="185311552"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/185311552" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ivan Molodetskikh <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#185311552">(Jan 10 2020 at 13:59)</a>:</h4>
<p>So, any issue I could subscribe to to track this?</p>



<a name="185311954"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/185311954" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#185311954">(Jan 10 2020 at 14:04)</a>:</h4>
<p><span class="user-mention" data-user-id="212263">@Ivan Molodetskikh</span> I think this might be a good proxy for "chalk is slow": <a href="https://github.com/rust-lang/chalk/issues/298" target="_blank" title="https://github.com/rust-lang/chalk/issues/298">https://github.com/rust-lang/chalk/issues/298</a>. There's no a dedicated issue for chalk caching yet</p>



<a name="185313466"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/Completion%20latency%3F/near/185313466" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ivan Molodetskikh <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/Completion.20latency.3F.html#185313466">(Jan 10 2020 at 14:22)</a>:</h4>
<p>Alright, thanks</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>